package com.springboot.frame.excel.entity;

import com.springboot.frame.excel.handler.CellHandler;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.poi.ss.usermodel.CellStyle;
import java.lang.reflect.Method;
import java.util.List;

/**
 * @author madman
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class WriterParam {

  /**
   * 表头名称
   */
  private String headerName;

  /**
   * 表头样式
   */
  private CellStyle headerStyle;

  /**
   * 字段的Getter方法
   */
  private Method method;

  /**
   * 字段对应列的索引
   */
  private int columnIndex;

  /**
   * 字段对应列的单元格样式
   */
  private CellStyle cellStyle;

  /**
   * 字段的子对象的数据参数
   */
  private List<WriterParam> children;

  /**
   * 字段的处理器
   */
  private CellHandler cellHandler;

  /**
   * 该字段对应列中相同内容是否需要合并
   */
  private boolean needMerge;
}
